-
Notifications
You must be signed in to change notification settings - Fork 68
Node name fix #268
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Node name fix #268
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Related change: superfly/flyctl#4168 |
888a85e
to
1394a9e
Compare
davissp14
commented
Jan 16, 2025
@@ -225,14 +231,6 @@ func (n *Node) Init(ctx context.Context) error { | |||
|
|||
// PostInit are operations that need to be executed against a running Postgres on boot. | |||
func (n *Node) PostInit(ctx context.Context) error { | |||
if ZombieLockExists() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of returning, allow it to be re-screened as there are certain failure conditions that can be resolved automatically. If not, it will enter a crash loop until the machines max restarts are hit.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PG Flex migration has historically been challenging due to the use of private IPs as node names in the repmgr.conf file. This configuration required converting the node name to the Machine ID, which is subsequently translated into
{machine_id}.vm.{app_name}.internal
. However, the node_name field in repmgr.conf has a 60-character limit, preventing the direct use of the DNS representation as the node name.Using Machine IDs addresses this limitation. Machine IDs remain consistent during migrations, allowing us to achieve the goal of seamless migration for PG members.
Note: When upgrading, the primary node in HA setups may temporarily be identified as a zombie because it will not have the updated code necessary to translate Machine IDs. However, this condition will resolve automatically once the primary node itself is upgraded.
Other notable fixes